package thread;

import java.util.HashSet;
import java.util.Scanner;
import java.util.concurrent.BlockingDeque;

class Singletonlazy{
    //懒汉模式----不立马new出来
    //加上volatile保证内存可见性+避免指令重排序
    private volatile static Singletonlazy instance=null;
    //静态成员的初始化在类加载阶段
    //

    //属性啥的-----
    //
    private Singletonlazy(int a){
        //带参数的构造方法
    }

    private Singletonlazy(){
        //构造方法
    }
    //当调用这个方法的时候,说明此时需要去获得这个单例类的实例化对象,这个时候可以确定一定要被用了,这个时候我
    //我们再去new
    public static Singletonlazy getInstance(){
        //获取这个唯一的独苗---实例化对象\
        Object locker=new Object();
            if (instance==null) {
                synchronized (locker) {
                    if (instance == null) {
                        instance = new Singletonlazy();
                    }
                }
            }
            return instance;
    }

}
public class demo25 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();
        scanner.close();
        HashSet<Character> hs = new HashSet<>();

        //write your code here......
        char[] ch=str.toCharArray();
        for(char c:ch){
            hs.add(c);
        }
        Object[] ch1=hs.toArray();
        StringBuffer sb=new StringBuffer();
            for (Object x:ch1){
                sb.append(x);
            }
        System.out.println(sb);
    }

}
